Objective-COP: Objective Context Oriented Programming
نویسندگان
چکیده
This paper introduces a context-oriented component-based application MDA (COCA-MDA) that modularizes the application’s context-dependent behaviour into context-oriented components. The components separate the application’s functional concerns from the extra-functional concerns. The application is organized into two casually connected layers: the base layer, which provides the application’s core structure, and the meta-layer, where the COCA-components are located, and which provides composable units of behaviour. This architecture provides software developers with a clear modular structure, which reflects a clear separation of concerns between the context provider and context consumer. In addition, this paper demonstrates the possibility of implementing context-oriented programming with Objective-C. The COCAmiddleware enables the context-aware application to modify its behaviour dynamically, based on the execution context
منابع مشابه
Comparative Evaluation of Programming Paradigms: Separation of Concerns with Object-, Aspect-, and Context-Oriented Programming
There are many programming paradigms for the separation of concerns (SoC). Each paradigm modularizes concerns in a different way. Context-oriented programming (COP) has been developed as a supplement to objectoriented programming (OOP), which is one of the most widely used paradigms for SoC. It modularizes concerns that are difficult for OOP. In this paper, we focus on three paradigms OOP, aspe...
متن کاملAn Introduction to Context-Oriented Programming with ContextS
Context-oriented Programming, or COP, provides programmers with dedicated abstractions and mechanisms to concisely represent behavioral variations that depend on execution context. By treating context explicitly, and by directly supporting dynamic composition, COP allows programmers to better express software entities that adapt their behavior late-bound at run-time. Our paper illustrates COP c...
متن کاملTyping Context-Dependent Behavioural Variations
Context Oriented Programming (COP) is a hot topic nowadays. A number of programming languages endowed with COP features has been developed. However, some foundational issues remain unclear. This paper proposes adopting static analysis techniques to predict how programs may react in different execution environments. We introduce a core functional language, ContextML, equipped with COP primitives...
متن کاملContext-oriented Programming
Context-dependent behavior is becoming increasingly important for a wide range of application domains, from pervasive computing to common business applications. Unfortunately, mainstream programming languages do not provide mechanisms that enable software entities to adapt their behavior dynamically to the current execution context. This leads developers to adopt convoluted designs to achieve t...
متن کاملContext-oriented Programming With Only Layers
Most if not all extensions to object-oriented languages that allow for context-oriented programming (COP) are asymmetric in the sense that they assume a base implementation of a system to be composed into classes and a set of layers to provide behavioral variations applied to those classes at run-time. We propose L as an experimental language to further explore the design space for COP language...
متن کامل